package com.leyou.item.service;

import com.leyou.item.dto.SkuDTO;
import com.leyou.item.dto.SpuDTO;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;
import java.util.Map;

/**
 * Created by IntelliJ IDEA.
 *
 * @author: wangzibeng
 * Date: 2019/5/5 0005
 * Time: 19:59
 */

@Transactional
public interface SkuService {
    /**
     * 根据spu_id查询sku
     *
     * @param id spu_iD
     * @return 返回SkuDTO-list
     */
    List<SkuDTO> querySkuBySpuId(Long id);

    /**
     * 新增商品
     *
     * @param spuDTO
     */
    void addGoods(SpuDTO spuDTO);

    /**
     * 修改商品
     *
     * @param spuDTO
     */
    void editGoods(SpuDTO spuDTO);

    /**
     * 根据ids查询 skuDto 集合
     *
     * @param ids ids集合
     * @return SkuDto集合
     */
    List<SkuDTO> querySkuByIds(List<Long> ids);

    /**
     * 减库存
     *
     * @param cartMap skuId 和数量 的map集合
     */
    void minusStock(Map<Long, Integer> cartMap);

}
